#include<iostream>
using std::cout;
using std::endl;


//int main(int argc, const char* argv[], const char* env[])
//{
//  //cout << argc << endl;
//  //extern char** environ;
//  //for(int i = 0; environ[i]; ++i)
//  //{
//  //  cout << "env[" << i << "]=>" << environ[i] << endl;
//  //}
//  //
//  //cout << endl;
//
//
//  //cout << getenv("PATH") << endl;;
//
//
//  return 0;
//}

#include<cstring>
#include<cstdio>
#include<cerrno>

#include<unistd.h>

#include"ThreadPool.hpp"

using FUNC = std::function<void()>;

void Task()
{
  cout << std::this_thread::get_id() << " is running" << endl;
}


int main()
{
  ThreadPool<FUNC>::GetInstance()->Init();

  while(1)
  {
    ThreadPool<FUNC>::GetInstance()->PushTask(Task);
    sleep(1);
  }


  //cout << strerror(0) << endl;
  //perror("rw");

  //char* p = "myenv=10";
  //putenv(p);

  //ssize_t a= 10;

  //int fd_arr[2];
  //pipe(fd_arr);

  //int count = 0;
  //char c = '0';
  //while(1)
  //{
  //  cout << count << endl;
  //  write(fd_arr[1], &c, 1);
  //  ++count;
  //}

  return 0;
}
